#include <bits/stdc++.h>
using namespace std;

const int R = 2e6 + 10, MAXC = 8e3 + 10;
// bitset<MAXC> b[MAXC];
char c[R];
// bool check1(int l, int r)
//{
//	for (int i = l + 1; i <= r; i += 2)
//	{
//		if (b[l][i] && b[i + 1][r])
//		{
//			b[l][r] = true;
//			return true;
//		}
//	}
//	int p1 = l, p2 = r, mid = (l + r) >> 1;
//	while (p1 <= mid && p2 >= mid)
//	{
//		if (c[p1] != c[p2])
//		{
//			return false;
//		}
//		++p1, --p2;
//	}
//	b[l][r] = true;
//	return true;
// }
bool check2(int l, int r)
{
	int i;
	string s;
	for (i = l; i <= r; ++i)
	{
		s.push_back(c[i]);
	}
	for (i = 0; !s.empty() && i < s.size();)
	{
		if (s[i] == s[i + 1])
		{
			s.erase(i, 2);
			i = 0;
		}
		else
		{
			++i;
		}
	}
	return s.empty();
}
int main()
{
	// freopen("game.in", "r", stdin);
	// freopen("game.out", "w", stdout);
	ios::sync_with_stdio(false);
	cin.tie(nullptr);
	cout.tie(nullptr);
	int n, i, j, len, l;
	cin >> n;
	cin >> c + 1;
	long long ans = 0;
	for (len = 2; len <= n; len += 2)
	{
		for (l = 1; l + len - 1 <= n; ++l)
		{
			if (check2(l, l + len - 1))
			{
				++ans;
			}
		}
	}
	cout << ans << '\n';
	return 0;
}
